package cn.just.utils;

import java.util.ArrayList;

/**
 * 表示分页查询结果(list集合，当前页码，总页码，上一页，下一页)
 * @author wujiaming
 * @param <T>
 */
public class Page<T> extends ArrayList<T> {
    /**
     * 当前页码
     */
    private Integer pageNo;
    /**
     * 总页码数
     */
    private Integer totalPage;
    /**
     * 下一页页码
     */
    private Integer nextPage;
    /**
     * 上一页页码
     */
    private Integer prePage;


    /**
     *
     * @param pageNo 当前页码
     * @param totalCount 总记录的数
     * @param pageSize 每页多少的数据
     * 传入pageNo，totalCount，计算totalPage，nextPage，prePage
     */
    public void setValue(int pageNo,int totalCount,int pageSize){
        this.pageNo = pageNo;
        this.totalPage = totalCount%pageSize==0?
                totalCount/pageSize:totalCount/pageSize+1;
        this.nextPage = pageNo+1<=totalPage?pageNo+1:totalPage;
        this.prePage = pageNo-1>=1?pageNo-1:1;
    }

    public Integer getPageNo() {
        return pageNo;
    }

    public Integer getTotalPage() {
        return totalPage;
    }

    public Integer getNextPage() {
        return nextPage;
    }

    public Integer getPrePage() {
        return prePage;
    }
}
